package com.dhecp.project.system.service;

import java.util.List;
import java.util.Map;


import com.dhecp.common.core.domain.AjaxResult;
import com.dhecp.project.system.domain.SysDictionaryForModule;

/**
 * 功能数据字典  业务层
 * @author lwl
 * @version 2019年11月1日
 */
public interface SysDictionaryForModuleService {

	/**
	 * 通过guid查询单条记录
	 * @param guid
	 * @return 实体 SysDictionaryForModule
	 * @author DH-Xxj
	 */
	SysDictionaryForModule queryDictionaryForModuleByGuid(String dictId);

	/**
	 * 按功能唯一标识查询
	 * @param moduleTable
	 * @return 实体 SysDictionaryForModule
	 * @author DH-Xxj
	 */
	SysDictionaryForModule queryDictionaryForModuleByModuleTable(String moduleTable);
	
	/**
     * 直接查询功能数据表
     * @param params
     * @return List
     * @author lwl
     */
    List<SysDictionaryForModule> queryDictionaryForModule(Map<String, Object> params) throws Exception;
    
	/**
	 * 按查询条件获取功能数据字典列表
	 * @param params
	 * @return List-SysDictionaryForModule
	 * @author DH-Xxj
	 */
	List<SysDictionaryForModule> queryDictionaryForModuleList(Map<String, Object> params) throws Exception;

	/**
	 * 需要身份验证的功能
	 * @param params
	 * @return Map (ModuleTable,PasswordAuthentication)
	 * @author DH-Xxj
	 */
	Map<String, String> queryAuthenticationModule(Map<String, Object> params);

	/**
	 * 新增功能数据字典
	 * @param params
	 * @return
	 * @author DH-Xxj
	 */
	AjaxResult insertDictionaryForModule(Map<String, Object> params);

	/**
	 * 通过guid删除功能数据字典
	 * @param dictionaryForModuleItems
	 * @return
	 * @author lwl
	 */
	AjaxResult deleteDictionaryForModuleByGuid(Map<String, Object> params);

	
	/**
	 * 通过guid修改功能数据字典
	 * @param dictionaryForModuleItems
	 * @return
	 * @author lwl
	 */
	AjaxResult updateDictionaryForModuleByGuid(Map<String, Object> params);

}